home *** CD-ROM | disk | FTP | other *** search
/ MACD 5 / MACD 5.bin / workbench / libs / newlooklib.lha / newlook / removegadgetsafely.c < prev    next >
C/C++ Source or Header  |  1993-10-03  |  796b  |  28 lines

  1. /*
  2.  *  REMOVEGADGETSAFELY.C
  3.  */
  4.  
  5. #include "newlook.h"
  6.  
  7. extern UWORD RemoveGadget( struct Window *, struct Gadget * );
  8. extern VOID RefreshGList( struct Gadget *, struct Window *, struct Requester *, UWORD );
  9. extern void SetAPen( struct RastPort *, UBYTE );
  10. extern void SetDrMd( struct RastPort *, UBYTE );
  11. extern void RectFill( struct RastPort *, SHORT, SHORT, SHORT, SHORT );
  12.  
  13. USHORT RemoveGadgetSafely(w,g)
  14. struct Window *w;
  15. struct Gadget *g;
  16. { UBYTE apen= w->RPort->FgPen,
  17.         drmd= w->RPort->DrawMode;
  18.   USHORT pos= RemoveGadget(w,g);
  19.   RefreshGList(g,w,NULL,1L);
  20.   SetAPen(w->RPort,w->RPort->BgPen);
  21.   SetDrMd(w->RPort,JAM2);
  22.   RectFill(w->RPort, g->LeftEdge, g->TopEdge,
  23.     g->LeftEdge+g->Width,g->TopEdge+g->Height);
  24.   SetDrMd(w->RPort,drmd);
  25.   SetAPen(w->RPort,apen);
  26.   return pos;
  27. }
  28.